d/rules: guard against accidental ABI breakages.
authorÉtienne Mollier <emollier@debian.org>
Thu, 12 Feb 2026 18:43:30 +0000 (19:43 +0100)
committerÉtienne Mollier <emollier@debian.org>
Thu, 12 Feb 2026 18:43:30 +0000 (19:43 +0100)
debian/rules

index 61b07630b5bbee745a4e34a052b84566f62a571a..92178284c6eb8c3789be80ee7701c230a13fccb5 100755 (executable)
@@ -59,6 +59,20 @@ ifneq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
   CMAKE_EXTRA_FLAGS += -DBUILD_TESTING:BOOL=OFF
 endif
 
+# Guard against accidental ABI breakages.
+DCMTK_SOVERSION != sed -n 's/set(DCMTK_ABI_VERSION \([0-9]\+\))/\1/p' CMake/dcmtkPrepare.cmake
+DEB_SOVERSION != sed -n 's/Package: libdcmtk\([0-9]\+\)/\1/p' debian/control
+execute_before_dh_autoreconf:
+       @ if [ $(DCMTK_SOVERSION) != $(DEB_SOVERSION) ] \
+       ; then \
+               printf 'E: libdcmtk%s package mismatches dcmtk soversion %s.\n' \
+                       $(DEB_SOVERSION) $(DCMTK_SOVERSION) \
+       ;       printf 'E: Please bump the package soversion to libdcmtk%s\n' \
+                       $(DCMTK_SOVERSION) \
+       ;       printf 'E: and coordinate a transition.\n' \
+       ;       exit 1 \
+       ; fi
+
 override_dh_auto_configure:
        dh_auto_configure -- $(CMAKE_EXTRA_FLAGS)